/*
 * Copyright 2001-2005 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License. You may obtain a copy of the License at
 * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
 * either express or implied. See the License for the specific language governing permissions and limitations under the
 * License.
 */
package org.apache.commons.net.nntp;

/***
 * NNTPCommand stores a set of constants for NNTP command codes.  To interpret
 * the meaning of the codes, familiarity with RFC 977 is assumed.
 * <p>
 * @author Daniel F. Savarese
 * @author Rory Winston
 * @author Ted Wise
 ***/

public final class NNTPCommand {

    public static final int ARTICLE = 0;
    public static final int BODY = 1;
    public static final int GROUP = 2;
    public static final int HEAD = 3;
    public static final int HELP = 4;
    public static final int IHAVE = 5;
    public static final int LAST = 6;
    public static final int LIST = 7;
    public static final int NEWGROUPS = 8;
    public static final int NEWNEWS = 9;
    public static final int NEXT = 10;
    public static final int POST = 11;
    public static final int QUIT = 12;
    public static final int SLAVE = 13;
    public static final int STAT = 14;
    public static final int AUTHINFO = 15;
    public static final int XOVER = 16;
    public static final int XHDR = 17;
    public static final int DATE = 18;
    public static final int MODE = 19;

    static final String[] _commands = {"ARTICLE", "BODY", "GROUP", "HEAD", "HELP", "IHAVE", "LAST", "LIST",
                                       "NEWGROUPS", "NEWNEWS", "NEXT", "POST", "QUIT", "SLAVE", "STAT", "AUTHINFO",
                                       "XOVER", "XHDR", "DATE", "MODE"};

    /***
     * Retrieve the NNTP protocol command string corresponding to a specified
     * command code.
     * <p>
     * @param command The command code.
     * @return The NNTP protcol command string corresponding to a specified
     *         command code.
     ***/
    public static final String getCommand(int command) {
        return _commands[command];
    }

    // Cannot be instantiated
    private NNTPCommand() {
    }

}

/* Emacs configuration
 * Local variables:        **
 * mode:             java  **
 * c-basic-offset:   4     **
 * indent-tabs-mode: nil   **
 * End:                    **
 */
